عوامل جلوگیری کننده از موازی سازی عبارتند از : 1.هزینه I/O 2.هماهنگی/رقابت

Σχετικά έγγραφα
محاسبه ی برآیند بردارها به روش تحلیلی

روش محاسبه ی توان منابع جریان و منابع ولتاژ

مثال( مساله الپالس در ناحیه داده شده را حل کنید. u(x,0)=f(x) f(x) حل: به کمک جداسازی متغیرها: ثابت = k. u(x,y)=x(x)y(y) X"Y=-XY" X" X" kx = 0

مفاهیم ولتاژ افت ولتاژ و اختالف پتانسیل

تحلیل مدار به روش جریان حلقه

مدار معادل تونن و نورتن

جلسه ی ۵: حل روابط بازگشتی

جلسه ی ۱۰: الگوریتم مرتب سازی سریع

فصل چهارم : مولتی ویبراتورهای ترانزیستوری مقدمه: فیدبک مثبت

جلسه ی ۴: تحلیل مجانبی الگوریتم ها

دانشکده ی علوم ریاضی جلسه ی ۵: چند مثال

تخمین با معیار مربع خطا: حالت صفر: X: مکان هواپیما بدون مشاهده X را تخمین بزنیم. بهترین تخمین مقداری است که متوسط مربع خطا مینیمم باشد:

سايت ويژه رياضيات درسنامه ها و جزوه هاي دروس رياضيات

جلسه 9 1 مدل جعبه-سیاه یا جستاري. 2 الگوریتم جستجوي Grover 1.2 مسا له 2.2 مقدمات محاسبات کوانتمی (22671) ترم بهار

1) { } 6) {, } {{, }} 2) {{ }} 7 ) { } 3) { } { } 8) { } 4) {{, }} 9) { } { }

ﯽﺳﻮﻃ ﺮﯿﺼﻧ ﻪﺟاﻮﺧ ﯽﺘﻌﻨﺻ هﺎﮕﺸﻧاد

بسم اهلل الرحمن الرحیم آزمایشگاه فیزیک )2( shimiomd

آزمایش 1: پاسخ فرکانسی تقویتکننده امیتر مشترك

جلسه ی ۲۴: ماشین تورینگ

آزمون مقایسه میانگین های دو جامعه )نمونه های بزرگ(

جلسه 3 ابتدا نکته اي در مورد عمل توابع بر روي ماتریس ها گفته می شود و در ادامه ي این جلسه اصول مکانیک کوانتمی بیان. d 1. i=0. i=0. λ 2 i v i v i.

فصل پنجم زبان های فارغ از متن

تلفات خط انتقال ابررسی یک شبکة قدرت با 2 به شبکة شکل زیر توجه کنید. ژنراتور فرضیات شبکه: میباشد. تلفات خط انتقال با مربع توان انتقالی متناسب

تئوری رفتار مصرف کننده : می گیریم. فرض اول: فرض دوم: فرض سوم: فرض چهارم: برای بیان تئوری رفتار مصرف کننده ابتدا چهار فرض زیر را در نظر

جلسه ی ۳: نزدیک ترین زوج نقاط

Beta Coefficient نویسنده : محمد حق وردی

جلسه 22 1 نامساویهایی در مورد اثر ماتریس ها تي وري اطلاعات کوانتومی ترم پاییز

جلسه 14 را نیز تعریف کرد. عملگري که به دنبال آن هستیم باید ماتریس چگالی مربوط به یک توزیع را به ماتریس چگالی مربوط به توزیع حاشیه اي آن ببرد.

معادلهی مشخصه(کمکی) آن است. در اینجا سه وضعیت متفاوت برای ریشههای معادله مشخصه رخ میدهد:

همبستگی و رگرسیون در این مبحث هدف بررسی وجود یک رابطه بین دو یا چند متغیر می باشد لذا هدف اصلی این است که آیا بین

فصل سوم : عناصر سوئیچ

فهرست مطالب جزوه ی فصل اول مدارهای الکتریکی مفاهیم ولتاژ افت ولتاژ و اختالف پتانسیل تحلیل مدار به روش جریان حلقه... 22

هو الحق دانشکده ي مهندسی کامپیوتر جلسه هفتم

تصاویر استریوگرافی.

قاعده زنجیره ای برای مشتقات جزي ی (حالت اول) :

تمرین اول درس کامپایلر

شاخصهای پراکندگی دامنهی تغییرات:

هد ف های هفته ششم: 1- اجسام متحرک و ساکن را از هم تشخیص دهد. 2- اندازه مسافت و جا به جایی اجسام متحرک را محاسبه و آن ها را مقایسه کند 3- تندی متوسط

مسائل. 2 = (20)2 (1.96) 2 (5) 2 = 61.5 بنابراین اندازه ی نمونه الزم باید حداقل 62=n باشد.

جلسه 12 به صورت دنباله اي از,0 1 نمایش داده شده اند در حین محاسبه ممکن است با خطا مواجه شده و یکی از بیت هاي آن. p 1

آزمایش 8: تقویت کننده عملیاتی 2

فعالیت = ) ( )10 6 ( 8 = )-4( 3 * )-5( 3 = ) ( ) ( )-36( = m n m+ m n. m m m. m n mn

تمرینات درس ریاض عموم ٢. r(t) = (a cos t, b sin t), ٠ t ٢π. cos ٢ t sin tdt = ka۴. x = ١ ka ۴. m ٣ = ٢a. κds باشد. حاصل x٢

تئوری جامع ماشین بخش سوم جهت سادگی بحث یک ماشین سنکرون دو قطبی از نوع قطب برجسته مطالعه میشود.

فصل چهارم : مولتی ویبراتورهای ترانزیستوری مقدمه: فیدبک مثبت

Answers to Problem Set 5

هندسه تحلیلی بردارها در فضای R

فصل سوم جریان های الکتریکی و مدارهای جریان مستقیم جریان الکتریکی

اصول انتخاب موتور با مفاهیم بسیار ساده شروع و با نکات کاربردی به پایان می رسد که این خود به درک و همراهی خواننده کمک بسیاری می کند.

تحلیل الگوریتم پیدا کردن ماکزیمم

باشند و c عددی ثابت باشد آنگاه تابع های زیر نیز در a پیوسته اند. به شرطی که g(a) 0 f g

جلسه 16 نظریه اطلاعات کوانتمی 1 ترم پاییز

Angle Resolved Photoemission Spectroscopy (ARPES)

دبیرستان غیر دولتی موحد

جلسه 15 1 اثر و اثر جزي ی نظریه ي اطلاعات کوانتومی 1 ترم پاي یز جدایی پذیر باشد یعنی:

فصل دهم: همبستگی و رگرسیون

جلسه ی ۱۸: درهم سازی سرتاسری - درخت جست و جوی دودویی

فصل 5 :اصل گسترش و اعداد فازی

نویسنده: محمدرضا تیموری محمد نصری مدرس: دکتر پرورش خالصۀ موضوع درس سیستم های مینیمم فاز: به نام خدا

جلسه 2 1 فضاي برداري محاسبات کوانتمی (22671) ترم بهار

جلسه دوم سوم چهارم: مقدمه اي بر نظریه میدان

فهرست جزوه ی فصل دوم مدارهای الکتریکی ( بردارها(

:موس لصف یسدنه یاه لکش رد یلوط طباور

ویرایشسال 95 شیمیمعدنی تقارن رضافالحتی

سلسله مزاتب سبان مقدمه فصل : زبان های فارغ از متن زبان های منظم

6- روش های گرادیان مبنا< سر فصل مطالب

به نام خدا. الف( توضیح دهید چرا از این تکنیک استفاده میشود چرا تحلیل را روی کل سیگنال x[n] انجام نمیدهیم

محاسبات کوانتمی 1 علم ساخت و استفاده از کامپیوتري است که بر پایه ي اصول مکانیک کوانتم قرار گرفته است.

1 دایره فصل او ل کاربردهای بسیاری داشته است. یک قضیۀ بنیادی در هندسه موسوم با محیط ثابت دایره دارای بیشترین مساحت است. این موضوع در طراحی

Spacecraft thermal control handbook. Space mission analysis and design. Cubesat, Thermal control system

خالصه درس: نویسنده:مینا سلیمان گندمی و هاجر کشاورز امید ریاضی شرطی. استقالل متغیر های تصادفی پیوسته x و y استقالل و امید ریاضی

جلسه 2 جهت تعریف یک فضاي برداري نیازمند یک میدان 2 هستیم. یک میدان مجموعه اي از اعداد یا اسکالر ها به همراه اعمال

چکیده مقدمه کلید واژه ها:

فیلتر کالمن Kalman Filter

آموزش SPSS مقدماتی و پیشرفته مدیریت آمار و فناوری اطالعات -

ثابت. Clausius - Clapeyran 1

فصل اول پیچیدگی زمانی و مرتبه اجرایی

آشنایی با پدیده ماره (moiré)

ندرک درگ ندرک درگ شور

نکنید... بخوانید خالء علمی خود را پر کنید و دانش خودتان را ارائه دهید.

بسم هللا الرحمن الرحیم

مود لصف یسدنه یاه لیدبت

ارزیابی بهره وری متقاطع DEA بر پایه بهبود پارتو

به نام خدا. Sparse Coding ستاره فرامرزپور

جزوه کارگاه برنامه نویسی

جلسه 23 1 تابع آنتروپی و خاصیت مقعر بودن نظریه اطلاعات کوانتمی 1 ترم پاییز

تابع ضخامت کاور بتن در ناحیه ی کششی تیرهای بتن مسلح با مقطع مستطیل پیمان بیرانوند مجتبی حسینی.

تعریف نیرو:نیرو بر هم کنش )تاثیر متقابل ) دو جسم بر یکدیگر است که این بر هم کنش میتواند از راه تماس مستقیم باشد

به نام ستاره آفرین قضیه ویریال جنبشی کل ذرات یک سیستم پایدار مقید به نیرو های پایستار را به متوسط انرژی پتانسیل کل شان

برابری کار نیروی برآیند و تغییرات انرژی جنبشی( را بدست آورید. ماتریس ممان اینرسی s I A

Top Down Parsing LL(1) Narges S. Bathaeian

I = I CM + Mh 2, (cm = center of mass)

مینامند یا میگویند α یک صفر تابع

جلسه 28. فرض کنید که m نسخه مستقل یک حالت محض دلخواه

4 آمار استنباطی 2 برآورد 1 فصل چهارم: آمار استنباطی

فهرست مطالب جزوه ی الکترونیک 1 فصل اول مدار الکتریکی و نقشه ی فنی... 2 خواص مدارات سری... 3 خواص مدارات موازی...

3 لصف یربج یاه ترابع و ایوگ یاه ناوت

راهنمای کاربری موتور بنزینی )سیکل اتو(


هدف از این آزمایش آشنایی با رفتار فرکانسی مدارهاي مرتبه اول نحوه تأثیر مقادیر عناصر در این رفتار مشاهده پاسخ دامنه

Transcript:

عوامل جلوگیری کننده از موازی سازی عبارتند از :.هزینه I/O.هماهنگی/رقابت ممکن است یک برنامه sequential بهتر از یک برنامه موازی باشد بطور مثال یک عدد 000 رقمی به توان یک عدد طوالنی اینکه الگوریتم را چگونه انتخاب کنیم بهینه باشد و بعد از آنکه بهنیه بودن الگوریتم ثابت شد الگوریتم را موازی می کنیم. الگوریتمی که غیر بهینه است بخواهیم موازی کنیم گاهی اوقات جواب درست نمی دهد بعضی اوقات تعداد کامپیوتر ها را افزایش می دهیم آن انتظاری که داریم بدست نمی آید گاهی اوقات بی تاثیر است و حتی بدتر جواب می دهد برای اینکه بفهمیم یک مسئله خوب جواب می دهد یا نه باید یکسری ارزیابی روی آن الگوریتم انجام بدهیم تعدادی از عوامل اصلی هستند و تعدادی از عوامل از روی این عوامل اصلی بدست می آیند چه عواملی در تحلیل برنامه های موازی تاثیر دارد :.زمان موازی یا فاصله t(p) : یعنی یک الگوریتم داریم با p پردازنده می خواهد کار کند.کار( work ) w(p) نکته.عوامل زمان موازی و کار عوامل اصلی هستند که عوامل دیگر از روی این عامل بدست می آیند نکته.جنس عوامل زمان موازی و کار زمان است پارامترهای ارزیابی :.تسریع.کارایی 3.بهره وری 4.دوباره کاری یک کار موازی زمانی که روی p پردازنده انجام می شود این ها با همدیگه یک کار رو انجام می دهند. ممکن است کامپیوتر اول یک قسمت از کار ر انجتم بدهد بعد متوقف شود و سپس کامپیوترهای دوم و سوم شروع به محاسبات کند و زمانی که کار کامپیوتر دوم و سوم تمام شد کامپیوتر اول شروع کند به کار کردن و به کامپیوتر چهارم دستور دهد که یک محاسباتی انجام دهد و همچنین کامپیوتر چهارم الزم بداند کامپیوتر دوم و سوم را درگیر خودش کند و کامپیوتر چهارم کامپیوتر اول را از نتیجه ی نهایی با خبر کند. زمان موازی برابر است با از اولین لحظه ای که اولین کامپیوتر برای محاسبات شروع به کار می کند تا زمانی که آخرین کامپیوتر کار خود را تمام می کند برای انجام آن محاسبات خاص به این فاصله زمانی t(p) می گویند که p پردازنده داریم به عنوان نمونه یک کامپیوتر یک محاسبات را یک دقیقه انجام می دهد و 4 کامپیوتر می گذاریم و این یک دقیقه محاسبات را در زمان 33 ثانیه انجام می دهد.

لزوما این چهار کامپیوتر این محاسبات را در زمان ثانیه انجام نمی دهند و ممکن است کمی بیشتر شود. 4 تا core گذاشتیم زمانش شده است 33 ثانیه که این 33 ثانیه می شود همان t(p) زمان موازی برای حل این مسئله 33 ثانیه خواهد بود معموال دنبال این هستیم که این را به حداقل ممکن برسانیم و مهم ترین بحث پردازش موازی این است که این را کاهش دهد اما برای محاسبه هزینه هایی مانند وقت cpu دارد اتفاق می افتد هر کدام از این cpu ها دارند کار مفیدی انجام می دهند مثال برق مصرف می کنند این قسمت سیاه رنگ دارند کار می کنند و برق مصرف می کنند اگر کامپیوتر اول لحظه هایی که کاری انجام می دهد a,b,c باشد جمع این a,b,c اسمش را می گذازیم w و کامپیوتر دوم را می گذازیم w و کامپیوتر سوم را می گذاریم w3 و... جمع کل اینها را می گذاریم Wp که برابر است با جمع کل کار انجام شده بین t(p) و w(p) رابطه زیر برقرار است : t(p) w(p) t()=w() به عنوان مثال اگر کل کار انجام شده برابر است با 33 ثانیه ممکن است کامپیوتر اول ثانیه و کامپیوتر دوم ثانیه و کامیپوتر سوم ثانیه و... وقت بگذارد جمع کل بیشتر از یک دقیقه که اول کار انتظار داشتیم و بالطبع بیشتر از 33 ثانیه بیشتر وقت گذاشته است. اگر کمتر بشود یک کامپیوتر هم کفایت می کند وقتی که موازی شدند باید مجموع کار انجام شده از زمان کل حتما بیشتر شود در جالتی که یک پردازنده داشته باشیم وقتی می نویسم یک یعنی یک پردازنده بیشتر نداریم و اصال موازی نیست در این الت w,p مساوی هستند کل زمانی که یک کامپیوتر برای حل مسئله با حالتی که p تا کامپیوتر برای حل مسئله در این حالت p تا پردازنده بهتر است مثال اگر یک کامپیوتر یک دقیقه طول بکشد انتظار داریم 33 ثانیه طول بکشد هدف پردازش موازی این است که( t(p)<t( اما کار برایش این اتفاق می افتد که جمع کاری که چهار تا کامپیوتر دارد بیشتر از کاری است که فقط یک کامپیوتر دارد است به دلیل اینکه هزینه هایی دارد که این هزینه ها باعث می شود کار بیشتری انجام دهد( w(p)>w( W=a+b+c W w3 w4 تسریع: تعریف تسریع یا speed up این است که کهر چقدر سریع تر می شود در حالت عادی کار ()t است یعنی در حالت sequential زمانی که p پردازنده می گذاریم t(p) می شود زمان اجرا یا سرعت اجرا برابر است با t(p) نسبت این دو بیانگر سرعت بخشی یا سرعت است به عنوان نمونه در حالت عادی کار یک دقیقه بوده است و چهار کامپیوتر گذاشتیم شده اسن نیم دقیقه به این معنی که تسریع برابر شده است در صورتی که ما انتظار داشتیم 4 برابر شده است بنابراین speed up=

این speed up همیشه از یک بیشتر است چون دنبال بهتر شدن نسبت به حالتی که یک کامپیوتر داریم هستیم اما از یک حدی کمتر خواهد بود و زمانی که p پردازنده می گذاریم انتظار داریم p برابر باشد ولی این امکان اتفاق نمی افتد بنابراین از p کمتر خواهد بود تنها در حالت speed up(p)=p که تنها یک پردازنده داشته باشیم به این معنی که: up(p)= speed در پردازش موازی این قسمت یک کم کم رنگ است طبق ادعای قانون amdohl این خط تا حدی ثابت است از یک حدی به بعد اضافه کردن پردازنده و کامپیوتر هیچ تاثیر ندارد و حتی ممکن است وضعیت بدتر بشود که بهتر نشود در sppedاگر up بتوانیم شرایطی ایجاد کنیم که بجای p بشود( Ѳ)p با هم خوب است در speed up اگر به جای p بتوانیم t(p) هم داشته باشیم باز هم خوب است که به آن تسریع خطی می گویند کار نیم دقیقه up= speed ضریب ثابت برابر است با یعنی به ازای هر پردازنده یکمی کار بهتر شود با 8 پردازنده برابر با و به ازای هر 4 پردازنده برابر شود در اینصورت باز هم می گویم speed up خطی است ضریب ثابتی اتفاق می افتد باید تعداد پردازنده های بیشتری مصرف کنیم ولی باز هم قابل قبول است امت حالت ایده آل نیست هزینه اضافه تری دارد اما مثل حالتی پیش نمی آید به حالتی برود که با افزایش پردازنده ها وضع بدتر بشود حداقل مطما هستیم بهتر می شود اگر بتوانیم این شرایط هم داشته باشیم باز هم خوب است 4 مشکل اصلی speed up قانون بدی است به نام قانون amdohl در این قانون speedدارای up حد و مرزی است تعریف speed up در قانون amdohl بصورت زیر است : s(p) = f + f p min ( f, p)

f مخفف کلمه fraction است که بخش غیر موازی پردازش موازی است همین f رو هم همین یکی و دو عامل کم و زیاد می کند کار I/O و کار هماهنگی و کار زیاد عمل send/receive کاری که رقابت زیاد است در آن ها در این شرایط ما f باالیی خواهیم داشت قسمت sequential کار بهتر از قسمت موازی کار است رابطه ها پیش نیازی است جاهایی که هم نیازی f- است اگر 0=f در اینصورت s(p)=p در اینصورت s(p)= f 0 f اگر =p و f S(p) ایده آل خط صاف است و هیچگاه این خط صاف اتفاق نمی افتد برعکس افت پیدا می کند و به یک خط ثابتی به اندازه ی می رسد بی نهایت حدش برابر است با f یعنی آن قسمت sequential حرف آخر را می زند در قانون amdohl ممکن است نقد ها و تغییر هایی در فرمول شده است بعضی اوقاات ممکن است وضعیت در شرایطی بدتر هم بشود ولی حداقلش این است که با افزایش پردازنده نمی توان انتظار speed up برابر با f داشت مثال کار یک دقیقه ای رسید به ثانیه دیگر ثانیه می ماند هر چه قدر پردازنده اضافه کنیم دیگر بهتر از ثانیه نمی شود متاسفانه این قانون بد پردازش موازی است که ما نتوانیم برنامه ها را تا حدی وسیع کنیم باید برسی کنیم این قسمت ها رو کم کنیم یعنی چاره ای جز کم کردن میزان f نداریم تا بتوانیم speed up مناسبی دریافت بکنیم

کارایی یا :efficient نسبت s(p) به p را کارایی گویند که حداکثر برابر است اما معموال خیلی کمتر از خواهد بود طبق قانون amdohl هرچه پردازنده ها را افزایش دهیم کارایی به شدت افت پیدا می کند یعنی ما داریم هزینه می کنیم و هیچ سودی نمی بریم e(p) = s(p) p پارامتر کارایی از فرمول زیر بدست می آید : بهره وری یا : utilize استفاده مناسب از منابع را بهره وری گویند چقدر از منابعی که داریم استفاده بهینه کردیم زمانی بهره وری است که قسمت سفید رنگ پیدا نشود و یا گم شود بهره وری عبارت است از نسبت قسمت سیاه رنگ به کل زمان مصرف بهره وری از فرمول زیر بدست می آید u(p) = w(p) p t(p) تعداد کامپیوتر ها :p :W(p) قسمت سیاه رنگ T(p) : هر کدام چقدر وقت تلف کردند کار مفیدشان بیشتر از w(p) نبوده است هدف بهره بری این است که برابر با یا 00% برسد فقط زمانی بهره بری به یک یا 00% می رسد که از یک کامپیوتر یا پردازنده استفاده کنیم دوباره کاری : نسبت w(p) به ()w را دوباره کاری می گویند.دوباره کاری همیشیه مقداری بزرگ تر یا مساوی دارد به دلیل اینکه I/O ها و هزنیه هایی که جهت هماهنگی که داریم کار انجام شده در حالتی که یک کامپیوتر داشت باشیم زیاد خواهد بود سوال جمع n عدد که 6=n و 8=p زمان مصرفی در حالتی که یک پردازنده داریم برای جمع n عدد برابر هزینه جمع زدن را یک ثانیه فرض می کنیم حالت اول هزینه ارتباط برابر است با صفر قانیه

حالت دوم هزینه ارتباط برابر است با یک ثانیه www.shz-soft.blogfa.com

حالت اول حالت دوم T(p)=4 T(p)=4+3 W(p)=5 W(5)=5+7= S(p)=t() t(p) 4 S(p)= t() =. 4 t(p) 7 E(p)= s(p) = 0. 7 E(p)=s(p) p = 3.75 w(p) U(p)= = 5 = 0.47 p t(p) 8 4 R(p)= w(p) w() = 5 5 = 8 = 0.47 =.4 p 8 U(p)= w(p) = 0.039 p t(p) R(p)=/47 همانطور که مالحظه می کنید تنها یک پارامتر دیده می شود اما پارامتر دیگری نیز استفاده می شود و آن حجم مسئله است ما با 8 کامپیوتر داریم عدد را با هم جمع می زنیم حاال اگر به جای 8 کامپیوتر 4 تا داشتیم چه اتفاقی می افتاد آیا می توان عدد را با 4 کامپیوتر جمع زد می آییم تقسیم می کنیم و هر کامپیوتر اعداد بیشتری را جمع بزند جواب هایشان را با یکدیگر به اشتراک بگذارند بنابراین می شود تعاد پردازنده ها کم باشد و تعداد کامپیوتر ها زیاد باشد پس باید عامل n را باید در همه ی این روابط در نظر گرفت به اختصار این فرمول ها را به این صورت نمایش می دهند : T(p,n)=t p (n) w(p,n)=w p (n) در صورتی که محدودیت پردازنده نداشته باشیم و هزینه ارتباطی نداشته باشیم از مرتبه ی (n O(log قانون خوب یا قانون : brant فرمول قانون برنت : نتایجی که از قانون برنت بدست می آید:.اگر توازی سازی= t() p t() t(p) t( ) + p t() t( ) همین جا که کاری که در زمان n می شود در زمان سازی در این مسئله باال است بسیار باال باشد ولی تعداد پردازنده ها کوچک باشد در اینصورت speed up تقریبا خطی است مثال در log n انجام می شود نسبت n به log n خیلی باال است بنابراین توازی

. t(p) t (p) منظور از (p) t بهترین الگوریتم زمان بدی چند پردازنده ای است O() O(n) O(n a ) a O(n a ) a O(a n ) O(a bn ) O(log n) O(log log n) O(log k n ) زمان ثابت زمان خطی چند جمله ای فوق خطی چند جمله ای بدون خطی نمایی فوق نمایی لگاریتمی لگاریتم دوبل Polylogarithmic مقایسه دو الگوریتم دارای : O بعضی وقت ها مرتبه هاشون O هم دیگر است اما زمانی که O هم بودن ضریب های ثابتشان با یکدیگر مقایسه می شود به طور مثل n, n(n+) این دو الگوریتم از مرتبه ی n هستند اما ضریب ثابت یکی از الگوریتم ها و الگوریتم دیگر دارای ضریب ثابت است

بنابراین آن الگوریتمی که دارای ضریب ثابت کمتری دارد بهتر است جاهایی که O داریم جرف آخر را O می زندولی جاهایی که O متفاوت است آن الگوریتمی که O کمتری دارد بهتر است مثال n > log n x log n n = ln n ln n = n ln n n ln() = n n =0 نکته : زمانی که ln بکار می رود یعنی لگاریتم عدد در مبنای عدد e یا عدد نپر که بصورت ln نمایش می دهند log b a = ln a ln b log n = ln n نکته : قانون لگاریتم ها با این صورت است و n 0.0 > ln n مثال از دو طرف لگاریتم می گیریم : 0.0 ln(n) > ln(ln n)) مثال log n! > n log n راه حل اول: قضیه استرلینگ : n! = Πn ( n e )n ( + α n ) در هر!n فقط مقدار α تغییر می کند ار دو طرف ln می گیریم که ln حاصل ضرب می شود جمع ln ها ln(n!) = ln Πn + n ln( n e ) + β ln(πn) + n(ln(n) ) + β n ln(n) راه حل دوم :

log n! = log + log + log 3 + + log n= بطور مثال : + + 3 + + n = O(n 3 ) = n(n+)(n+) 6 با کمک انتگرال گیری می توان O را بدست آورد اگر یک سری مانند f()+f()+f(3)+...+f(n) داشته باشیم که صعودی یا نزولی باشد که عمدتا صعودی باید باشد کل این از مرتبه f(n) خواهد n بود که f(n) برابر است با f(x) dx توابع بازیگشتی می تواند به فرم های مختلفی باشد تعدادی از فرم های توابع بازگشتی عبارتند از :. t(n) = t(n ) + f(n). t ( n b ) + g(n) 3. t(n) = [at(n ) + b(t ) + ] + f(n) نکته:به فرم شماره دوم فرم مستر می گویند مثال نکته:یکی از مسائلی که در فرم شماره سوم کاربرد دارد مسئله ی فیبوناچی است t(n) = t(n ) + f(n) t > { t() = t = T(n-)=t(n-)+f(n-)

T(n-)=t(n-3)+f(n-) T(n-3)=t(n-4)+f(n-3)... T()=t()+f() بصورت تلسکوپی خط می خورد بنابراین t(n) بصورت زیر خواد بود : t(n) = t() + [f() + f(3) + f(4) + + f(n)] هر تابعی که باشد با انترگال گرفتن می توان O آن را بدست آورد t(n) = t() + [f() + f(3) + f(4) + + f(n)] t()=0 [f() + f(3) + f(4) + + f(n)] +3+ n= +n *(n-) T(n)=Ѳ(n ) بنابراین که تصاعد حسابی است و برابر است با T()=0 T(n)=t(n-)+log n تمرین T(n)=t( n ) + n T()= مثال

اگر ما مقدار دقیق تابع را بخواهیم از روش درختی استفاده می کنیم اما اگر تنها O را بخواهیم از قضیه ای به نام قضیه مستر استفاده می کنیم باید تعداد ()t با تعداد مربع ها جمع بشود تا بتوانیم O آنرا بدست آوریم بنابراین مجموع مربع ها برابر است با تعداد الیه ها ضرب در تعداد مربع ها و تعداد ()t برابر است با n

= n log n + n t() =O(nlog n) مثال T()=0 t(n) = t ( n ) + log n t(n) = t() + log n + log n + log n + log ] 4 log n = k log n = log n log =k- log n 4 = k

T(n)=k+(k-)+(k-)+ + = = k (k+) log n (log(n) + ) =O(log n)